package Model;

import java.io.Serializable;
import javax.persistence.*;
import org.hibernate.annotations.Cascade;
import org.hibernate.annotations.CascadeType;
import org.hibernate.annotations.Fetch;
import org.hibernate.annotations.FetchMode;
import java.util.Date;


@Entity
@Table(name = "contaReceberEmpresa")
public class ContaReceberEmpresa implements Serializable {

@SuppressWarnings("serial")
   @Id
   @SequenceGenerator( name = "cod_conta_receber_empresa", sequenceName = "cod_receber_empresa_seq", allocationSize = 1 )
   @GeneratedValue( strategy = GenerationType.SEQUENCE, generator = "cod_conta_receber_empresa" )
   @Column (name = "cod_conta_receber_empresa")
   private int codReceberEmpresa;

   

   @Column (name = "descricao")
   private  String  descricao;

   @Column (name = "valor_total")
   private  double  valorTotal;

   @Column (name = "valor_pago")
   private  double  valorPago;

   @Column (name = "forma_pagamento")
   private  int  formaPagamento;


   //Construtores
   //Construtor padrao
   public ContaReceberEmpresa() {
      this.codReceberEmpresa = 0;
      this.descricao = "";
      this.valorTotal=0;
      this.valorPago=0;
      this.formaPagamento=0;
   }

   public ContaReceberEmpresa(int codReceberEmpresa, Venda venda, String descricao, Date dataDespesa, int formaPagamento, double valorTotal, double valorPago){
       this.codReceberEmpresa = codReceberEmpresa;
       this.descricao = descricao;
       this.valorTotal = valorTotal;
       this.valorPago = valorPago;
       this.formaPagamento = formaPagamento;
   }

    //Metodos get e set
    public int getCodReceberEmpresa() {
        return codReceberEmpresa;
    }
    public void setCodReceberEmpresa(int codReceberEmpresa) {
        this.codReceberEmpresa = codReceberEmpresa;
    }

    public String getDescricao() {
        return descricao;
    }
    public void setDescricao(String descricao) {
        this.descricao = descricao;
    }

    public double getValorTotal() {
        return valorTotal;
    }
    public void setValorTotal(double valorTotal) {
        this.valorTotal = valorTotal;
    }

    public double getValorPago() {
        return valorPago;
    }
    public void setValorPago(double valorPago) {
        this.valorPago = valorPago;
    }

    public int getFormaPagamento() {
        return formaPagamento;
    }
    public void setFormaPagamento(int formaPagamento) {
        this.formaPagamento = formaPagamento;
    }
}